package mechanics;//定义包

//不能再类前面添加static
public class Dog {
    public void run(){
        this.eat();//调用静态方法
        System.out.println("我也会奔跑哦!");
    }
    //static:静态 静态成员/类成员
    //该类所有对象共享(同一块内存空间)/生命周期长
    public static int price;//价格
    public static void eat(){
        //run();//静态方法中不能直接访问非静态成员(包括方法和属性),只能直接调用静态成员
        //this.run();//静态方法中不能直接访问非静态成员
        price=1200;//静态方法可以直接调用静态方法或静态属性
        //静态方法中不能直接访问同一个类中的非静态成员,只能调用同一个类中的静态成员
        //只能通过实例化对象,对象.成员方法的方式访问非静态成员
        Dog temp=new Dog();
        temp.run();
        System.out.println("不要为我食物,请给我充电!");
    }
    public Dog(){
        //不能在局部变量前加static
        System.out.println("我是一只机器狗!");
    }

}
